機器學習(Machine Learning)就類似「找一個函式」。這個函式可以接受輸入,然後輸出正確答案。而機器學習的類別可以分為三種類別(types)。分別是迴歸(Rregression)、分類(classification),以及結構(Structure)。
機器學習如何學習呢? 可以分為三個步驟。
第一個步驟就是找一個模型。舉例來說,如果要預測 Youtube 頻道的點閱人數。可以用 來當作模型。其中 就是明天的點閱人數。 就是前一天的觀看人數。這邊將前一天的觀看人數就是要餵入模型的特徵(feature)。而 與 就是要從資料中學習(找出)的未知參數(unknown parameter)。而模型的樣子會需要領域知識來建立,但不見得一定是對的。
第二步驟就是要定義損失函數(Loss),也就是要定義「函式預估的結果」與「真實值」之間的差距怎麼來評估。在這邊用標記(Label)來表示真實的值。損失函數可以寫成
其中 根據需求可以有不同的計算方法。如
第三步就是最佳化。這邊介紹梯度下降方法(Gradient Descent)。簡單的說,就是用一開始先選用一個 ,之後將 對 在 作微分,藉此找出損失變小的方向。接著設定好學習速率(learning rate)。之後再更新 。最後當計算次數到達設定條件,或是真的找到微分為 0 時就停止。
要注意的是,梯度下降法所找到的是局部最佳解(local minima),而不是全域最佳解(global minima)。但真正在做低度下降時所面對的問題不是這個。至於是哪個日後會再解釋。